/* $VER: graburl.ibrx 1.0 Made by Sören Forsberg : sorenf@hem1.passagen.se */ /* fixa case oberoende i filtyps-sparning koll om någon anger "http://" som url,eller ingen url alls */ OPTIONS RESULTS OPTIONS FAILAT 15 call addlib('rexxreqtools.library',0,-30) NL ='0a'x /* newline */ zero ='00'x /* zero */ list ='
'||NL||'The following files were saved:'||NL||NL tot =20000 last =0 fonttag = "rt_font=" || 'topaz' || "/" || 8 cachepath ='IBrowse:cache' title ='Dumpfiles by sorenf@hem1.passagen.se 1998' tags ='rt_pubscrname=IBROWSESCREEN' /* Change here the name of the screen IBROWSE runs */ noconfig_txt ='I cannot find the config-file'||NL||'Please run Dumpfiles once First!'||NL||'I need you to locate your chache-drawer' /* Read configuration, get new cachepath if missing or wrong */ ok=open(configfile,'ibrowse:rexx/dumpfiles.config','R') IF ok THEN DO cachepath=readln(configfile) close(configfile) END IF ~exists(cachepath'globalcache') THEN ok=0 IF ~ok THEN DO sel=rtezrequest(noconfig_txt,,title, tags) exit END address 'IBROWSE' 'QUERY URL' url = result url=url||zero IF LENGTH(url)<13 THEN DO sel=rtezrequest('Please use a valid cache-url',,title, tags) EXIT END say url IF urllen<8 THEN EXIT sel=2 /* Check with globalcache and save appropiate file */ local=pos('file:',url) if local~=0 then do len=LENGTH(url) source=SUBSTR(url,18,len-17) END say source IF local=0 THEN DO ok=open(infile,cachepath'globalcache','R') if ~ok then exit input=readch(infile,tot) Do FOREVER IF last=0 THEN last=1 hit=POS(url,input,last) /* Find a url in cachelist */ If hit>0 then Do last=POS(zero,input,hit) mid=last last=POS(zero,input,last+1) len=last-hit yeah=SUBSTR(input,hit,len) check=compare(url,yeah) /* Check if we want it */ yeahupp=UPPER(yeah) yeah=RIGHT(yeah,13) test=pos(zero,yeah) IF test~=0 THEN yeah=RIGHT(yeah,(LENGTH(yeah)-test)) source=cachepath||yeah leave END IF hit>(tot-200) | (hit=0) THEN DO /* Take a new bit of cachelist */ old=RIGHT(input,200) /* if needed */ new=READCH(infile,tot-200) input=old||new last=last-(tot-200) IF last<1 THEN last=1 END IF EOF(infile) | (hit~=0) THEN LEAVE /* Are we done yet? */ END ADDRESS 'AREXX' close(infile) END list='Non-linked possible URL''s'||NL ok=open(configfile,source,'R') say ok say source dup_chars='.,!?"*%&)' /* ta bort före och efter */ IF ok THEN DO DO UNTIL EOF(configfile) line=readln(configfile) DO i=1 TO WORDS(line) check=WORD(line,i) check=STRIP(check,'B','.') dot=pos('.',check) IF dot~=0 THEN DO dot1=pos('.',check,dot+1) IF (dot1~=0) & ((dot+1)~=dot1) & (pos('=',check)=0) THEN DO check=STRIP(check,'B','"') list=list||''||check||''||NL END END END END close(configfile) say list /*Save the list of files and send to IBrowse*/ list=list||'' ok=open(resultfile,'RAM:T/graburl.html','W') new=writeln(resultfile,list) close(resultfile) address 'IBROWSE' 'GOTOURL file://localhost/RAM:T/graburl.html' END Exit /* mailto om inneh @ strippa alla dup tecken tills ok, ska göras före punktcheck slopa kopiering till ram: läs direkt. koll om html göra en loop till check för att få antal punkter om html kolla att det inte finns en '' , kräver att vi har en UPPER(line) att testa mot? läsa in och lägga ihop flera rader för att kunna kolla ovanstående */